package br.cesed.pIII.pjcax;

public class AVLNodo {

	private AVLNodo pai = null, filhoEsq = null, filhoDir = null;

	private int valor;

	public AVLNodo(AVLNodo pai, AVLNodo filhoEsq, AVLNodo filhoDir, int valor) {
		setPai(pai);
		setFilhoDir(filhoDir);
		setFilhoEsq(filhoEsq);
		setValor(valor);
	}

	public static void addAVLNodo(AVLNodo a, AVLNodo b) {
		if (a.getValor() > b.getValor()) {
			if (b.getFilhoDir() == null) {
				a.setPai(b);
				b.setFilhoDir(a);
			} else {
				addAVLNodo(a, b.getFilhoDir());
			}
		} else if (a.getValor() < b.getValor()) {
			if (b.getFilhoEsq() == null) {
				a.setPai(b);
				b.setFilhoEsq(a);
			} else {
				addAVLNodo(a, b.getFilhoEsq());
			}
		}

	}

	public int getValor() {
		return valor;
	}

	public void setValor(int valor) {
		this.valor = valor;
	}

	public AVLNodo getPai() {
		return pai;
	}

	public void setPai(AVLNodo pai) {
		this.pai = pai;
	}

	public AVLNodo getFilhoEsq() {
		return filhoEsq;
	}

	public void setFilhoEsq(AVLNodo filhoEsq) {
		this.filhoEsq = filhoEsq;
	}

	public AVLNodo getFilhoDir() {
		return filhoDir;
	}

	public void setFilhoDir(AVLNodo filhoDir) {
		this.filhoDir = filhoDir;
	}

}
